import { UserConfig, ConfigEnv, loadEnv } from 'vite'
import vue from '@vitejs/plugin-vue'
import path from 'path'

export default ({ mode }: ConfigEnv): UserConfig => {
  // 获取 .env 环境配置文件
  const env = loadEnv(mode, process.cwd())
  console.log('env.VITE_APP_BASE_API: ', env.VITE_APP_BASE_API)
  return {
    plugins: [vue()],
    // 本地反向代理解决浏览器跨域限制
    server: {
      open: true,
      host: true,
      port: Number(env.VITE_APP_PORT), // 运行自动打开浏览器
      proxy: {
        [env.VITE_APP_BASE_API]: {
          // 线上API地址
          target: 'http://39.105.133.11/',
          changeOrigin: true,
          rewrite: path => path.replace(new RegExp('^' + env.VITE_APP_BASE_API), '/')
        }
      }
    },
    resolve: {
      alias: {
        '@': path.resolve(__dirname, './src')
      }
    },
    css: {
      preprocessorOptions: {
        less: {
          charset: false,
          additionalData: '@import "./src/assets/global.less";'
        }
      }
    }
  }
}
